Let alt be a float for benefit of D108 and D109 protocols to make more
authorrobertl <robertl@f51c46e8-681c-474f-0cfe-069cfd0219fb>
Thu, 14 Oct 2004 01:49:46 +0000 (01:49 +0000)
committerrobertl <robertl@f51c46e8-681c-474f-0cfe-069cfd0219fb>
Thu, 14 Oct 2004 01:49:46 +0000 (01:49 +0000)
immunune from rounding resulting from integer truncation.
(Why do I sense 'm going to regret doing this so late in the release cycle?)

gpsbabel/jeeps/gps.h
gpsbabel/jeeps/gpsapp.c

index 8abd464db5e97baa6e8c425725e3fa1b06a77371..2c6f0c1965f01be7be7a264064339a08d6e1ba12 100644 (file)
@@ -129,7 +129,7 @@ typedef struct GPS_SWay
     int32  colour;
     char   cc[2];
     UC     wpt_class;
-    int32  alt;
+    float  alt;
     char   city[24];
     char   state[2];
     char   name[30];
index 5f20f1641f870f2a36a5271b8a914916085d743c..2db5a4df8e0f10136d697445f9b66c3e14c70f47 100644 (file)
@@ -1206,7 +1206,7 @@ static void GPS_D108_Get(GPS_PWay *way, UC *s)
     (*way)->lon = GPS_Math_Semi_To_Deg(GPS_Util_Get_Int(p));
     p+=sizeof(int32);
     
-    (*way)->alt = (int32)GPS_Util_Get_Float(p);
+    (*way)->alt = GPS_Util_Get_Float(p);
     p+=sizeof(float);
     (*way)->dpth = (int32)GPS_Util_Get_Float(p);
     p+=sizeof(float);
@@ -1270,7 +1270,7 @@ static void GPS_D109_Get(GPS_PWay *way, UC *s)
     (*way)->lon = GPS_Math_Semi_To_Deg(GPS_Util_Get_Int(p));
     p+=sizeof(int32);
     
-    (*way)->alt = (int32)GPS_Util_Get_Float(p);
+    (*way)->alt = GPS_Util_Get_Float(p);
     p+=sizeof(float);
     (*way)->dpth = (int32)GPS_Util_Get_Float(p);
     p+=sizeof(float);
@@ -1953,7 +1953,6 @@ static void GPS_D109_Send(UC *data, GPS_PWay way, int32 *len)
     p+=sizeof(int32);
     GPS_Util_Put_Int(p,(int32)GPS_Math_Deg_To_Semi(way->lon));
     p+=sizeof(int32);
-
     GPS_Util_Put_Float(p,way->alt);
     p+=sizeof(float);
     GPS_Util_Put_Float(p,way->dpth);